[INFO] cloning repository https://github.com/luhanzhen/RuCos
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/luhanzhen/RuCos" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluhanzhen%2FRuCos", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluhanzhen%2FRuCos'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d60915ef0740c706dc83fc06978de1dc035f49ea
[INFO] checking luhanzhen/RuCos against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluhanzhen%2FRuCos" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/luhanzhen/RuCos on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/luhanzhen/RuCos
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/luhanzhen/RuCos
[INFO] tweaked toml for git repo https://github.com/luhanzhen/RuCos written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/luhanzhen/RuCos already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cb7b4bcdd45d9b7131aa84586d6b22b7269a9e74600bece81ddbd926596d38a5
[INFO] running `Command { std: "docker" "start" "-a" "cb7b4bcdd45d9b7131aa84586d6b22b7269a9e74600bece81ddbd926596d38a5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cb7b4bcdd45d9b7131aa84586d6b22b7269a9e74600bece81ddbd926596d38a5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cb7b4bcdd45d9b7131aa84586d6b22b7269a9e74600bece81ddbd926596d38a5", kill_on_drop: false }`
[INFO] [stdout] cb7b4bcdd45d9b7131aa84586d6b22b7269a9e74600bece81ddbd926596d38a5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1bdabc216c27a8831d590272147fdf13891769dfe012540bed771d80f0775fd0
[INFO] running `Command { std: "docker" "start" "-a" "1bdabc216c27a8831d590272147fdf13891769dfe012540bed771d80f0775fd0", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.76
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]     Checking smallvec v1.11.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking bitflags v2.4.1
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]     Checking unicode-width v0.1.11
[INFO] [stderr]     Checking strum v0.25.0
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]     Checking getrandom v0.2.11
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]     Checking comfy-table v7.1.0
[INFO] [stderr]     Checking rucos v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Formatter`
[INFO] [stdout]  --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::{Debug, Formatter};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Formatter`
[INFO] [stdout]  --> src/solve/heuristics/variable/variable_random.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fmt::{Debug, Formatter};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Formatter`
[INFO] [stdout]  --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::{Debug, Formatter};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Formatter`
[INFO] [stdout]  --> src/solve/heuristics/variable/variable_random.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fmt::{Debug, Formatter};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:27:41
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:27:52
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:44
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value_idx`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:55
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_value_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:73
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn select_variable<'a>(&mut self, solver: &'a InnerSolver) -> &'a Var {
[INFO] [stdout]    |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:29:41
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:29:52
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:44
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value_idx`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:55
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_value_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:73
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `random`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let random = random::<usize>() % len;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_random`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `borrow`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let borrow = solver.borrow();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:27:41
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:27:52
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:44
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value_idx`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:55
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_value_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:73
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn select_variable<'a>(&mut self, solver: &'a InnerSolver) -> &'a Var {
[INFO] [stdout]    |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:29:41
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:29:52
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:44
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value_idx`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:55
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_value_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:73
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `random`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let random = random::<usize>() % len;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_random`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `borrow`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let borrow = solver.borrow();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_satisfied`, `get_name`, `restore_to_level`, and `get_type` are never used
[INFO] [stdout]   --> src/constraint/constraint.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub(crate) trait ConstraintTrait: Display + Debug {
[INFO] [stdout]    |                  --------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 82 |     fn is_satisfied(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 83 |
[INFO] [stdout] 84 |     fn get_name(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 85 |
[INFO] [stdout] 86 |     fn restore_to_level(&mut self, level: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     fn get_type(&self) -> &XConstraintType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `initialise`, `filter_by_variable`, `filter_by_arc`, `is_coarse_grained`, `is_fine_grained`, and `restore_to_level` are never used
[INFO] [stdout]   --> src/constraint/propagator.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub(crate) trait PropagatorTrait: Debug {
[INFO] [stdout]    |                  --------------- methods in this trait
[INFO] [stdout] 21 |     fn initialise(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 22 |     fn filter_by_variable(&mut self, dummy: &Var) -> Result<usize, &Box<dyn ExceptionTrait>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     fn filter_by_arc(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn is_coarse_grained(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 29 |     fn is_fine_grained(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     fn restore_to_level(&mut self, level: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `select_variable` is never used
[INFO] [stdout]   --> src/solve/heuristics/variable/heuristic_variable_trait.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait HeuristicVariableTrait: Debug + NewDecision + DeleteDecision {
[INFO] [stdout]    |           ---------------------- method in this trait
[INFO] [stdout] 23 |     fn select_variable<'a>(&mut self, solver: &'a InnerSolver) -> &'a Var;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `select_value` is never used
[INFO] [stdout]   --> src/solve/heuristics/value/heuristic_value_trait.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub trait HeuristicValueTrait: Debug {
[INFO] [stdout]    |           ------------------- method in this trait
[INFO] [stdout] 20 |     fn select_value(&mut self, var: &Var) -> i32;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `should_restart` and `initialize` are never used
[INFO] [stdout]   --> src/solve/restart/restart_trait.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub trait RestartTrait: Debug {
[INFO] [stdout]    |           ------------ methods in this trait
[INFO] [stdout] 20 |     fn should_restart(&mut self, solver: &InnerSolver) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 21 |
[INFO] [stdout] 22 |     fn initialize(&mut self, solver: &InnerSolver);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `full_backtrack` and `is_implemented` are never used
[INFO] [stdout]   --> src/solve/callbacks/delete_decision.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait DeleteDecision: Debug {
[INFO] [stdout]    |           -------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn full_backtrack(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 24 |
[INFO] [stdout] 25 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/domain_reduction.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait DomainReduction: Debug {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/new_decision.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait NewDecision: Debug {
[INFO] [stdout]    |           ----------- method in this trait
[INFO] [stdout] 21 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver);
[INFO] [stdout] 22 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/non_consistency.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub trait NonConsistency: Debug {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] 22 |     fn non_consistency_callback(&mut self, cons: &Constraint, level: usize, solver: &InnerSolver);
[INFO] [stdout] 23 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 24 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_satisfied`, `get_name`, `restore_to_level`, and `get_type` are never used
[INFO] [stdout]   --> src/constraint/constraint.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub(crate) trait ConstraintTrait: Display + Debug {
[INFO] [stdout]    |                  --------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 82 |     fn is_satisfied(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 83 |
[INFO] [stdout] 84 |     fn get_name(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 85 |
[INFO] [stdout] 86 |     fn restore_to_level(&mut self, level: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     fn get_type(&self) -> &XConstraintType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `initialise`, `filter_by_variable`, `filter_by_arc`, `is_coarse_grained`, `is_fine_grained`, and `restore_to_level` are never used
[INFO] [stdout]   --> src/constraint/propagator.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub(crate) trait PropagatorTrait: Debug {
[INFO] [stdout]    |                  --------------- methods in this trait
[INFO] [stdout] 21 |     fn initialise(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 22 |     fn filter_by_variable(&mut self, dummy: &Var) -> Result<usize, &Box<dyn ExceptionTrait>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     fn filter_by_arc(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn is_coarse_grained(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 29 |     fn is_fine_grained(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     fn restore_to_level(&mut self, level: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `select_variable` is never used
[INFO] [stdout]   --> src/solve/heuristics/variable/heuristic_variable_trait.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait HeuristicVariableTrait: Debug + NewDecision + DeleteDecision {
[INFO] [stdout]    |           ---------------------- method in this trait
[INFO] [stdout] 23 |     fn select_variable<'a>(&mut self, solver: &'a InnerSolver) -> &'a Var;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `select_value` is never used
[INFO] [stdout]   --> src/solve/heuristics/value/heuristic_value_trait.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub trait HeuristicValueTrait: Debug {
[INFO] [stdout]    |           ------------------- method in this trait
[INFO] [stdout] 20 |     fn select_value(&mut self, var: &Var) -> i32;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `should_restart` and `initialize` are never used
[INFO] [stdout]   --> src/solve/restart/restart_trait.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub trait RestartTrait: Debug {
[INFO] [stdout]    |           ------------ methods in this trait
[INFO] [stdout] 20 |     fn should_restart(&mut self, solver: &InnerSolver) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 21 |
[INFO] [stdout] 22 |     fn initialize(&mut self, solver: &InnerSolver);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `full_backtrack` and `is_implemented` are never used
[INFO] [stdout]   --> src/solve/callbacks/delete_decision.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait DeleteDecision: Debug {
[INFO] [stdout]    |           -------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn full_backtrack(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 24 |
[INFO] [stdout] 25 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/domain_reduction.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait DomainReduction: Debug {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/new_decision.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait NewDecision: Debug {
[INFO] [stdout]    |           ----------- method in this trait
[INFO] [stdout] 21 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver);
[INFO] [stdout] 22 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/non_consistency.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub trait NonConsistency: Debug {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] 22 |     fn non_consistency_callback(&mut self, cons: &Constraint, level: usize, solver: &InnerSolver);
[INFO] [stdout] 23 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 24 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.30s
[INFO] running `Command { std: "docker" "inspect" "1bdabc216c27a8831d590272147fdf13891769dfe012540bed771d80f0775fd0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1bdabc216c27a8831d590272147fdf13891769dfe012540bed771d80f0775fd0", kill_on_drop: false }`
[INFO] [stdout] 1bdabc216c27a8831d590272147fdf13891769dfe012540bed771d80f0775fd0
[INFO] checking luhanzhen/RuCos against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fluhanzhen%2FRuCos" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/luhanzhen/RuCos on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/luhanzhen/RuCos
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/luhanzhen/RuCos
[INFO] tweaked toml for git repo https://github.com/luhanzhen/RuCos written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/luhanzhen/RuCos already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3bb913c4070667fe45f5288e009ee0ae3666c361f86c063989b0f67991d6cd93
[INFO] running `Command { std: "docker" "start" "-a" "3bb913c4070667fe45f5288e009ee0ae3666c361f86c063989b0f67991d6cd93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3bb913c4070667fe45f5288e009ee0ae3666c361f86c063989b0f67991d6cd93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3bb913c4070667fe45f5288e009ee0ae3666c361f86c063989b0f67991d6cd93", kill_on_drop: false }`
[INFO] [stdout] 3bb913c4070667fe45f5288e009ee0ae3666c361f86c063989b0f67991d6cd93
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0638ea93ab4040ee645389bc832f28ae06ba384d5b013ba7e03e1d9f3030f5cf
[INFO] running `Command { std: "docker" "start" "-a" "0638ea93ab4040ee645389bc832f28ae06ba384d5b013ba7e03e1d9f3030f5cf", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.76
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]     Checking smallvec v1.11.2
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]     Checking bitflags v2.4.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking unicode-width v0.1.11
[INFO] [stderr]     Checking strum v0.25.0
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]     Checking getrandom v0.2.11
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]     Checking comfy-table v7.1.0
[INFO] [stderr]     Checking rucos v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:230:18
[INFO] [stdout]     |
[INFO] [stdout] 230 |         for i in 1..size {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:261:18
[INFO] [stdout]     |
[INFO] [stdout] 261 |         for i in 0..self.max_size() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:311:18
[INFO] [stdout]     |
[INFO] [stdout] 311 |         for i in 1..self.prev.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:314:18
[INFO] [stdout]     |
[INFO] [stdout] 314 |         for i in 0..self.next.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:380:18
[INFO] [stdout]     |
[INFO] [stdout] 380 |         for _ in 0..index {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/spare_set.rs:107:18
[INFO] [stdout]     |
[INFO] [stdout] 107 |         for i in 0..size {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/utils/sparse_set_of_reference.rs:67:18
[INFO] [stdout]    |
[INFO] [stdout] 67 |         for i in 0..size {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/variable/domain/domain_range.rs:51:18
[INFO] [stdout]    |
[INFO] [stdout] 51 |         for i in 0..self.max_size() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/variable/domain/domain_trait.rs:208:18
[INFO] [stdout]     |
[INFO] [stdout] 208 |         for i in 0..self.max_size() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/variable/domain/domain_values.rs:35:18
[INFO] [stdout]    |
[INFO] [stdout] 35 |         for i in 0..vals.len() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/variable/domain/domain_values.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |         for i in 0..self.max_size() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Formatter`
[INFO] [stdout]  --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::{Debug, Formatter};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Formatter`
[INFO] [stdout]  --> src/solve/heuristics/variable/variable_random.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fmt::{Debug, Formatter};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/solve/solution/mod.rs:72:26
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 for i in 0..15 {
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/solve/solution/mod.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 for i in (var_size - 5)..var_size {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/solve/solution/mod.rs:97:30
[INFO] [stdout]    |
[INFO] [stdout] 97 |                     for i in 0..15 {
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/solve/solution/mod.rs:104:30
[INFO] [stdout]     |
[INFO] [stdout] 104 |                     for i in (var_size - 5)..var_size {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/solve/solver/core_component.rs:93:19
[INFO] [stdout]    |
[INFO] [stdout] 93 |         for i in (1..=self.variables.len()).rev() {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:230:18
[INFO] [stdout]     |
[INFO] [stdout] 230 |         for i in 1..size {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:261:18
[INFO] [stdout]     |
[INFO] [stdout] 261 |         for i in 0..self.max_size() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:311:18
[INFO] [stdout]     |
[INFO] [stdout] 311 |         for i in 1..self.prev.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:314:18
[INFO] [stdout]     |
[INFO] [stdout] 314 |         for i in 0..self.next.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/linked_set.rs:380:18
[INFO] [stdout]     |
[INFO] [stdout] 380 |         for _ in 0..index {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/utils/spare_set.rs:107:18
[INFO] [stdout]     |
[INFO] [stdout] 107 |         for i in 0..size {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/utils/sparse_set_of_reference.rs:67:18
[INFO] [stdout]    |
[INFO] [stdout] 67 |         for i in 0..size {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/variable/domain/domain_range.rs:51:18
[INFO] [stdout]    |
[INFO] [stdout] 51 |         for i in 0..self.max_size() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/variable/domain/domain_trait.rs:208:18
[INFO] [stdout]     |
[INFO] [stdout] 208 |         for i in 0..self.max_size() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/variable/domain/domain_values.rs:35:18
[INFO] [stdout]    |
[INFO] [stdout] 35 |         for i in 0..vals.len() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/variable/domain/domain_values.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |         for i in 0..self.max_size() {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Formatter`
[INFO] [stdout]  --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::{Debug, Formatter};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Formatter`
[INFO] [stdout]  --> src/solve/heuristics/variable/variable_random.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::fmt::{Debug, Formatter};
[INFO] [stdout]   |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/solve/solution/mod.rs:72:26
[INFO] [stdout]    |
[INFO] [stdout] 72 |                 for i in 0..15 {
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/solve/solution/mod.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 for i in (var_size - 5)..var_size {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/solve/solution/mod.rs:97:30
[INFO] [stdout]    |
[INFO] [stdout] 97 |                     for i in 0..15 {
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/solve/solution/mod.rs:104:30
[INFO] [stdout]     |
[INFO] [stdout] 104 |                     for i in (var_size - 5)..var_size {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/solve/solver/core_component.rs:93:19
[INFO] [stdout]    |
[INFO] [stdout] 93 |         for i in (1..=self.variables.len()).rev() {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:27:41
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:27:52
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:44
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value_idx`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:55
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_value_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:73
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn select_variable<'a>(&mut self, solver: &'a InnerSolver) -> &'a Var {
[INFO] [stdout]    |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:29:41
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:29:52
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:44
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value_idx`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:55
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_value_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:73
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `random`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let random = random::<usize>() % len;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_random`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `borrow`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let borrow = solver.borrow();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:27:41
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:27:52
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:44
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value_idx`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:55
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_value_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:37:73
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_dom_over_ddeg.rs:51:39
[INFO] [stdout]    |
[INFO] [stdout] 51 |     fn select_variable<'a>(&mut self, solver: &'a InnerSolver) -> &'a Var {
[INFO] [stdout]    |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:29:41
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:29:52
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver) {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `var`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:44
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                            ^^^ help: if this is intentional, prefix it with an underscore: `_var`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value_idx`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:55
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_value_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `solver`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:35:73
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn delete_decision_callback(&mut self, var: &Var, value_idx: usize, solver: &InnerSolver) {
[INFO] [stdout]    |                                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_solver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `random`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let random = random::<usize>() % len;
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_random`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `borrow`
[INFO] [stdout]   --> src/solve/heuristics/variable/variable_random.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let borrow = solver.borrow();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_borrow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_satisfied`, `get_name`, `restore_to_level`, and `get_type` are never used
[INFO] [stdout]   --> src/constraint/constraint.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub(crate) trait ConstraintTrait: Display + Debug {
[INFO] [stdout]    |                  --------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 82 |     fn is_satisfied(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 83 |
[INFO] [stdout] 84 |     fn get_name(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 85 |
[INFO] [stdout] 86 |     fn restore_to_level(&mut self, level: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     fn get_type(&self) -> &XConstraintType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `initialise`, `filter_by_variable`, `filter_by_arc`, `is_coarse_grained`, `is_fine_grained`, and `restore_to_level` are never used
[INFO] [stdout]   --> src/constraint/propagator.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub(crate) trait PropagatorTrait: Debug {
[INFO] [stdout]    |                  --------------- methods in this trait
[INFO] [stdout] 21 |     fn initialise(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 22 |     fn filter_by_variable(&mut self, dummy: &Var) -> Result<usize, &Box<dyn ExceptionTrait>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     fn filter_by_arc(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn is_coarse_grained(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 29 |     fn is_fine_grained(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     fn restore_to_level(&mut self, level: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `select_variable` is never used
[INFO] [stdout]   --> src/solve/heuristics/variable/heuristic_variable_trait.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait HeuristicVariableTrait: Debug + NewDecision + DeleteDecision {
[INFO] [stdout]    |           ---------------------- method in this trait
[INFO] [stdout] 23 |     fn select_variable<'a>(&mut self, solver: &'a InnerSolver) -> &'a Var;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `select_value` is never used
[INFO] [stdout]   --> src/solve/heuristics/value/heuristic_value_trait.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub trait HeuristicValueTrait: Debug {
[INFO] [stdout]    |           ------------------- method in this trait
[INFO] [stdout] 20 |     fn select_value(&mut self, var: &Var) -> i32;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `should_restart` and `initialize` are never used
[INFO] [stdout]   --> src/solve/restart/restart_trait.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub trait RestartTrait: Debug {
[INFO] [stdout]    |           ------------ methods in this trait
[INFO] [stdout] 20 |     fn should_restart(&mut self, solver: &InnerSolver) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 21 |
[INFO] [stdout] 22 |     fn initialize(&mut self, solver: &InnerSolver);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `full_backtrack` and `is_implemented` are never used
[INFO] [stdout]   --> src/solve/callbacks/delete_decision.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait DeleteDecision: Debug {
[INFO] [stdout]    |           -------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn full_backtrack(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 24 |
[INFO] [stdout] 25 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/domain_reduction.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait DomainReduction: Debug {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/new_decision.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait NewDecision: Debug {
[INFO] [stdout]    |           ----------- method in this trait
[INFO] [stdout] 21 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver);
[INFO] [stdout] 22 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/non_consistency.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub trait NonConsistency: Debug {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] 22 |     fn non_consistency_callback(&mut self, cons: &Constraint, level: usize, solver: &InnerSolver);
[INFO] [stdout] 23 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/variable/domain/mod.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn new_with_range(range: Range<i32>) -> Self {
[INFO] [stdout]    |                                  ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/variable/domain/domain_range.rs:29:23
[INFO] [stdout]    |
[INFO] [stdout] 29 |     pub fn new(range: Range<i32>) -> Self {
[INFO] [stdout]    |                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_satisfied`, `get_name`, `restore_to_level`, and `get_type` are never used
[INFO] [stdout]   --> src/constraint/constraint.rs:82:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub(crate) trait ConstraintTrait: Display + Debug {
[INFO] [stdout]    |                  --------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 82 |     fn is_satisfied(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 83 |
[INFO] [stdout] 84 |     fn get_name(&self) -> &str;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 85 |
[INFO] [stdout] 86 |     fn restore_to_level(&mut self, level: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 90 |     fn get_type(&self) -> &XConstraintType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `initialise`, `filter_by_variable`, `filter_by_arc`, `is_coarse_grained`, `is_fine_grained`, and `restore_to_level` are never used
[INFO] [stdout]   --> src/constraint/propagator.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub(crate) trait PropagatorTrait: Debug {
[INFO] [stdout]    |                  --------------- methods in this trait
[INFO] [stdout] 21 |     fn initialise(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 22 |     fn filter_by_variable(&mut self, dummy: &Var) -> Result<usize, &Box<dyn ExceptionTrait>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     fn filter_by_arc(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn is_coarse_grained(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 29 |     fn is_fine_grained(&self) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     fn restore_to_level(&mut self, level: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `select_variable` is never used
[INFO] [stdout]   --> src/solve/heuristics/variable/heuristic_variable_trait.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait HeuristicVariableTrait: Debug + NewDecision + DeleteDecision {
[INFO] [stdout]    |           ---------------------- method in this trait
[INFO] [stdout] 23 |     fn select_variable<'a>(&mut self, solver: &'a InnerSolver) -> &'a Var;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `select_value` is never used
[INFO] [stdout]   --> src/solve/heuristics/value/heuristic_value_trait.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub trait HeuristicValueTrait: Debug {
[INFO] [stdout]    |           ------------------- method in this trait
[INFO] [stdout] 20 |     fn select_value(&mut self, var: &Var) -> i32;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `should_restart` and `initialize` are never used
[INFO] [stdout]   --> src/solve/restart/restart_trait.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub trait RestartTrait: Debug {
[INFO] [stdout]    |           ------------ methods in this trait
[INFO] [stdout] 20 |     fn should_restart(&mut self, solver: &InnerSolver) -> bool;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 21 |
[INFO] [stdout] 22 |     fn initialize(&mut self, solver: &InnerSolver);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `full_backtrack` and `is_implemented` are never used
[INFO] [stdout]   --> src/solve/callbacks/delete_decision.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait DeleteDecision: Debug {
[INFO] [stdout]    |           -------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn full_backtrack(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 24 |
[INFO] [stdout] 25 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/domain_reduction.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait DomainReduction: Debug {
[INFO] [stdout]    |           --------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 24 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/new_decision.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait NewDecision: Debug {
[INFO] [stdout]    |           ----------- method in this trait
[INFO] [stdout] 21 |     fn new_decision_callback(&mut self, var: &Var, solver: &InnerSolver);
[INFO] [stdout] 22 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_implemented` is never used
[INFO] [stdout]   --> src/solve/callbacks/non_consistency.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub trait NonConsistency: Debug {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] 22 |     fn non_consistency_callback(&mut self, cons: &Constraint, level: usize, solver: &InnerSolver);
[INFO] [stdout] 23 |     fn is_implemented(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 40 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 40 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rucos` (lib) due to 3 previous errors; 40 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "0638ea93ab4040ee645389bc832f28ae06ba384d5b013ba7e03e1d9f3030f5cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0638ea93ab4040ee645389bc832f28ae06ba384d5b013ba7e03e1d9f3030f5cf", kill_on_drop: false }`
[INFO] [stdout] 0638ea93ab4040ee645389bc832f28ae06ba384d5b013ba7e03e1d9f3030f5cf
